Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

379
Vistas
¿Por qué recibo errores de "miembro no exportado" cuando intento actualizar Angular?

La cuestión

Estoy intentando actualizar de Angular V9 a V11 y tengo bastantes problemas con los siguientes errores

Namespace node_module/@angular/core/core has no exported member ɵɵFactoryDeclaration Namespace node_module/@angular/core/core has no exported member ɵɵInjectorDeclaration Namespace node_module/@angular/core/core has no exported member ɵɵNgModuleDeclaration Namespace node_module/@angular/core/core has no exported member ɵɵɵComponentDeclaration

pero no estoy completamente seguro de lo que significa y cómo podría solucionarlo.

lo que probé

He analizado un problema similar: Ng serve throwing @angular/core/core no tiene un miembro exportado 'eeFactoryDef', que fue el único rastro que pude encontrar de este problema, pero realmente no me ha ayudado.

Intenté eliminar toda mi carpeta node_modules y reinstalar las dependencias de npm con npm i . npm ci también. También intenté agregar

 "@angular/core/*": [ "./node_modules/@angular/core/*" ]

O

 "@angular/*": [ "./node_modules/@angular/*" ]

a mi tsconfig.json , pero eso tampoco ayudó.

Cuál creo que es el problema

No tengo idea de esto, pero creo que algo anda mal con las rutas de mis dependencias de NPM, ya que se refiere a @angular/core/core , pero no existe esa carpeta en mis node_modules .

Si voy al archivo node_modules/@angular/core/core.d.ts , que creo que es la ruta /core/core , aunque no estoy seguro de esto, también veo el mismo error allí, lo que me confunde aún más porque pensé que el problema sería entre Angular y las dependencias, pero no dentro de Angular en sí.

Paquete.json

 { "name": "WorthaShot", "version": "0.0.3", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "build:prod": "ng build --prod", "test": "ng test", "lint": "ng lint", "e2e": "ng e2e" }, "private": true, "dependencies": { "@angular/animations": "~12.0.0-next.7", "@angular/cdk": "^11.2.7", "@angular/common": "~12.0.0-next.7", "@angular/compiler": "~12.0.0-next.7", "@angular/core": "~11.2.8", "@angular/fire": "^6.1.4", "@angular/flex-layout": "^10.0.0-beta.32", "@angular/forms": "~12.0.0-next.7", "@angular/material": "^11.2.7", "@angular/platform-browser": "~12.0.0-next.7", "@angular/platform-browser-dynamic": "~12.0.0-next.7", "@angular/router": "~12.0.0-next.7", "@angular/service-worker": "~12.0.0-next.7", "@fortawesome/angular-fontawesome": "^0.8.2", "@fortawesome/fontawesome-common-types": "^0.2.35", "@fortawesome/fontawesome-svg-core": "^1.2.35", "@fortawesome/free-brands-svg-icons": "^5.15.3", "@fortawesome/free-solid-svg-icons": "^5.15.3", "@ngbmodule/material-carousel": "^0.7.1", "@ngx-meta/core": "^9.0.0", "@ngx-translate/core": "^13.0.0", "@ngx-translate/http-loader": "^6.0.0", "firebase": "^8.3.2", "flag-icon-css": "^3.5.0", "guid-typescript": "^1.0.9", "ngx-color-picker": "^10.1.0", "ngx-image-compress": "^8.0.4", "ngx-markdown": "^10.1.1", "ngx-sharebuttons": "^8.0.5", "ngx-spinner": "^10.0.1", "ngx-toastr": "^13.2.1", "rxjs": "~6.6.7", "tslib": "^2.2.0", "zone.js": "~0.10.2" }, "devDependencies": { "@angular-devkit/build-angular": "^0.1102.7", "@angular/cli": "~11.2.7", "@angular/compiler-cli": "~12.0.0-next.7", "@angular/language-service": "~12.0.0-next.7", "@types/jasmine": "~3.6.0", "@types/jasminewd2": "~2.0.3", "@types/node": "^14.14.37", "codelyzer": "^6.0.1", "jasmine-core": "~3.6.0", "jasmine-spec-reporter": "~5.0.0", "karma": "~6.3.2", "karma-chrome-launcher": "~3.1.0", "karma-coverage-istanbul-reporter": "~3.0.2", "karma-jasmine": "~4.0.0", "karma-jasmine-html-reporter": "^1.5.0", "protractor": "~7.0.0", "ts-node": "~8.10.2", "tslint": "~6.1.3", "typescript": "^4.2.3" } }

¿Qué me falta o no entiendo aquí?

over 4 years ago · Santiago Trujillo
8 Respuestas
Responde la pregunta

0

Entonces, dediqué algunas horas a esto en los últimos días y, aunque hay muchas respuestas útiles aquí, pensé en contribuir. Por el error en sí, es obvio que esto es principalmente un problema con la inyección de dependencia. Muchos paquetes de Angular se rompen a medida que actualizamos las versiones. Para mí, esto ocurrió al actualizar los módulos de Firebase.

Angular cambia la forma en que importa y lee módulos en todas las versiones, así como las ubicaciones de los módulos, lo que causa este problema. @angular/localize es definitivamente un módulo útil.

Además, sobre el tema de firebase: en realidad no está bien documentado en ninguna parte, pero angularfire2 y @angular/fire no pueden funcionar juntos y @angular/fire es donde ahora reside angularFire, como se puede ver al instalar el paquete: ingrese la descripción de la imagen aquí

over 4 years ago · Santiago Trujillo Denunciar

0

La solución más fácil que encuentro es ubicar el archivo de error (el código VS proporcionará un enlace al archivo donde aparece el error), luego identifique la dependencia culpable, ahora elimine de package.json o actualice la dependencia para corregir el error. y recuerda hacer

instalar npm

si lo borras.

over 4 years ago · Santiago Trujillo Denunciar

0

El motivo de este error es que su biblioteca no está actualizada.

Compruebe los archivos app.module.ts .

Retire en orden y luego instale la nueva muestra.

over 4 years ago · Santiago Trujillo Denunciar

0

Para este error:

"Namespace node_module/@angular/core/core no tiene un miembro exportado ɵɵFactoryDeclaration", "Namespace node_module/@angular/core/core no tiene un miembro exportado ɵɵInjectorDeclaration"

Deberías reemplazar esto:

 static ɵfac: i0.ɵɵFactoryDef < ScreenTrackingService, [null, { optional: true; }, { optional: true; }, null, { optional: true; }] > ;

Con este:

 static ɵprov: i0.ɵɵInjectableDef<ScreenTrackingService>;

en el componente ScreenTrackingService.

over 4 years ago · Santiago Trujillo Denunciar

0

Recibí este error incluso sin una actualización. Obtuve con "@angular/core": "~9.1.1" con Node v12.16.2 y npm 4.0.2 . Ocurría a partir de componentes primeNg. Actualicé al node: '14.17.0' y npm a npm: '6.14.13' , creé una nueva aplicación angular, reinstalé todas las dependencias, incluido primeNg, agregué todo el código del proyecto actual, volví a compilar y el error desapareció.

over 4 years ago · Santiago Trujillo Denunciar

0

así que me encontré con este problema mientras hacía un tutorial sobre FireBase

Lo que el tutorial sugirió que hiciera fue esto:

  1. Instale fuego angular ejecutando npm install @angular/fire
  2. Reemplace todas las apariciones de angularfire2 con @angular/fire (al importar)
  3. Reemplace todas las apariciones de afAuth.auth con afAuth

Al hacer esto, también tuve que habilitar allowSyntheticDefaultImports en el archivo tsConfig (en las opciones del compilador, "allowSyntheticDefaultImports": verdadero).

Esto solucionó mi problema.

over 4 years ago · Santiago Trujillo Denunciar

0

En caso de que tenga el problema después de haber instalado primeng, tenga en cuenta que la última versión de primeng (12.0.0-rc.1) no funciona con la última versión de angular. Necesitas instalar una versión anterior de primeng, ¡para mí 11.4 funcionó perfectamente!

 npm i primeng@11.4.2
over 4 years ago · Santiago Trujillo Denunciar

0

Estoy enfrentando el mismo problema.

Este enlace podría ayudar.

Estos son los pasos en la guía de actualización oficial: Si depende de la localización, primero ejecute este comando:

 ng add @angular/localize

Y haga que la localización funcione en su código con las refactorizaciones necesarias para $localize()

  • ejecuta estos comandos
 ng update @angular/core@10 @angular/cli@10 ng update @angular/core@11 @angular/cli@11

Actualizar a mecanografiado 4

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda